'\" t
.\"     Title: git-credential-store
.\"    Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\"      Date: 07/27/2015
.\"    Manual: Git Manual
.\"    Source: Git 2.5.0
.\"  Language: English
.\"
.TH "GIT\-CREDENTIAL\-STO" "1" "07/27/2015" "Git 2\&.5\&.0" "Git Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
git-credential-store \- Helper to store credentials on disk
.SH "SYNOPSIS"
.sp
.nf
git config credential\&.helper \(aqstore [options]\(aq
.fi
.sp
.SH "DESCRIPTION"
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBNote\fR
.ps -1
.br
.sp
Using this helper will store your passwords unencrypted on disk, protected only by filesystem permissions\&. If this is not an acceptable security tradeoff, try \fBgit-credential-cache\fR(1), or find a helper that integrates with secure storage provided by your operating system\&.
.sp .5v
.RE
.sp
This command stores credentials indefinitely on disk for use by future Git programs\&.
.sp
You probably don\(cqt want to invoke this command directly; it is meant to be used as a credential helper by other parts of git\&. See \fBgitcredentials\fR(7) or EXAMPLES below\&.
.SH "OPTIONS"
.PP
\-\-file=<path>
.RS 4
Use
<path>
to lookup and store credentials\&. The file will have its filesystem permissions set to prevent other users on the system from reading it, but will not be encrypted or otherwise protected\&. If not specified, credentials will be searched for from
~/\&.git\-credentials
and
$XDG_CONFIG_HOME/git/credentials, and credentials will be written to
~/\&.git\-credentials
if it exists, or
$XDG_CONFIG_HOME/git/credentials
if it exists and the former does not\&. See also
the section called \(lqFILES\(rq\&.
.RE
.SH "FILES"
.sp
If not set explicitly with \fI\-\-file\fR, there are two files where git\-credential\-store will search for credentials in order of precedence:
.PP
~/\&.git\-credentials
.RS 4
User\-specific credentials file\&.
.RE
.PP
$XDG_CONFIG_HOME/git/credentials
.RS 4
Second user\-specific credentials file\&. If
\fI$XDG_CONFIG_HOME\fR
is not set or empty,
$HOME/\&.config/git/credentials
will be used\&. Any credentials stored in this file will not be used if
~/\&.git\-credentials
has a matching credential as well\&. It is a good idea not to create this file if you sometimes use older versions of Git that do not support it\&.
.RE
.sp
For credential lookups, the files are read in the order given above, with the first matching credential found taking precedence over credentials found in files further down the list\&.
.sp
Credential storage will by default write to the first existing file in the list\&. If none of these files exist, ~/\&.git\-credentials will be created and written to\&.
.sp
When erasing credentials, matching credentials will be erased from all files\&.
.SH "EXAMPLES"
.sp
The point of this helper is to reduce the number of times you must type your username or password\&. For example:
.sp
.if n \{\
.RS 4
.\}
.nf
$ git config credential\&.helper store
$ git push http://example\&.com/repo\&.git
Username: <type your username>
Password: <type your password>

[several days later]
$ git push http://example\&.com/repo\&.git
[your credentials are used automatically]
.fi
.if n \{\
.RE
.\}
.sp
.SH "STORAGE FORMAT"
.sp
The \&.git\-credentials file is stored in plaintext\&. Each credential is stored on its own line as a URL like:
.sp
.if n \{\
.RS 4
.\}
.nf
https://user:pass@example\&.com
.fi
.if n \{\
.RE
.\}
.sp
.sp
When Git needs authentication for a particular URL context, credential\-store will consider that context a pattern to match against each entry in the credentials file\&. If the protocol, hostname, and username (if we already have one) match, then the password is returned to Git\&. See the discussion of configuration in \fBgitcredentials\fR(7) for more information\&.
.SH "GIT"
.sp
Part of the \fBgit\fR(1) suite
